package com.yixin.hospital.entity.dto.req.patient;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.yixin.hospital.entity.domain.PatientAddress;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;

@Data
@ApiModel("新增患者请求体")
public class PatientAddReqDTO {
    @ApiModelProperty(value = "姓名", example = "马保国")
    @NotBlank(message = "姓名不能为空")
    private String name;

    @ApiModelProperty(value = "性别", example = "男")
    @NotBlank(message = "性别不能为空")
    private String sex;

    @ApiModelProperty(value = "身份证号", example = "420983199405064010")
    @NotBlank(message = "身份证号不能为空")
    private String idCard;

    @ApiModelProperty(value = "手机号", example = "13277090522")
    @NotBlank(message = "手机号不能为空")
    private String phone;

    @ApiModelProperty(value = "手机号2", example = "13277090522")
    private String phoneTwo;

    @ApiModelProperty(value = "手机号3", example = "13277090522")
    private String phoneThree;

    @ApiModelProperty(value = "手机号4", example = "13277090522")
    private String phoneFour;

    @ApiModelProperty(value = "出生日期", example = "2024-04-06")
    @NotNull(message = "出生日期不能为空")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date birthday;

    @ApiModelProperty(value = "阴历/阳历", example = "1")
    @NotNull(message = "阴历/阳历不能为空")
    private Integer birthdayType;

    @ApiModelProperty(value = "住址", example = "吉林省")
    private List<PatientAddress> addressList;


    @ApiModelProperty(value = "来源", example = "1")
    @NotNull(message = "来源不能为空")
    private Long source;

    @ApiModelProperty(value = "介绍人", example = "王福顺")
    private Long introducer;
}
